package com.kehutong.charge.entity;

import com.kehutong.charge.util.enums.ResidentsTypeEnum;
import com.kehutong.common.entity.DataEntity;
import org.coraframework.json.annotation.JSONField;
import org.coraframework.orm.annotation.Column;
import org.coraframework.orm.annotation.Table;
import org.coraframework.orm.annotation.UnSave;
import org.coraframework.orm.util.IDType;

import java.util.List;

/**
 * @program: kht
 * @description: ChargeHouseConfig
 * @author: joneron
 * @create: 2021/6/23
 **/
@Table(value="t_charge_house_config", comment="收费房屋配置",multi = true, idType = IDType.TIMESTAMP, engine = "innodb")
public class ChargeHouseConfig extends DataEntity {

    protected ChargeHouseConfig(String id) {
        super(id);
    }

    @Column(comment="小区编号")
    private String communityNo;

    @Column(comment="小区名称")
    private String communityName;

    @Column(comment="房屋编号")
    private String houseNo;

    @Column(comment="房屋名称")
    private String houseName;

    @Column(comment="楼栋编号")
    private String buildNo;

    @Column(comment="楼栋名称")
    private String buildName;

    @Column(comment="单元名称")
    private String unitName;

    @Column(comment="楼层名称")
    private String floorName;

    @Column(comment="楼层房号合并字段")
    private String mergeName;

    @Column(comment="居住类型")
    private ResidentsTypeEnum reType;

    @Column(comment = "缴费人")
    private String chargeName;

    @Column(comment = "用户编号")
    private String ownerNo;

    @Column(comment = "缴费面积")
    private String chargeArea;

    @Column(comment = "收费配置id集合")
    private List<String> configId;

    @Column(dbType = "TEXT", comment="阶梯计费配置")
    /** 收费配置集合 */
    private List<String> items;

    @Column(comment = "状态：false未配置，true已配置")
    private boolean configStatus;

    @Column(comment = "排序")
    private Integer sort;

    @JSONField(serialize = false)
    @Column(comment = "逻辑删除")
    private boolean deleted;

    @Column(comment = "创建人")
    private String createName;

    @Column(comment = "修改人")
    private String updateName;

    @UnSave
    /**仪表数量 */
    private Integer meterNumber;

    /** 已配置数量 */
    @UnSave
    private Integer configNumber;

    /** 缴费人手机号 */
    @UnSave
    private String mobile;


    public String getOwnerNo() {
        return ownerNo;
    }

    public void setOwnerNo(String ownerNo) {
        this.ownerNo = ownerNo;
    }

    public String getHouseNo() {
        return houseNo;
    }

    public void setHouseNo(String houseNo) {
        this.houseNo = houseNo;
    }

    public List<String> getItems() {
        return items;
    }

    public void setItems(List<String> items) {
        this.items = items;
    }

    public String getCommunityNo() {
        return communityNo;
    }

    public void setCommunityNo(String communityNo) {
        this.communityNo = communityNo;
    }

    public String getCommunityName() {
        return communityName;
    }

    public void setCommunityName(String communityName) {
        this.communityName = communityName;
    }

    public String getBuildNo() {
        return buildNo;
    }

    public void setBuildNo(String buildNo) {
        this.buildNo = buildNo;
    }

    public String getBuildName() {
        return buildName;
    }

    public void setBuildName(String buildName) {
        this.buildName = buildName;
    }

    public String getUnitName() {
        return unitName;
    }

    public void setUnitName(String unitName) {
        this.unitName = unitName;
    }

    public String getMergeName() {
        return mergeName;
    }

    public void setMergeName(String mergeName) {
        this.mergeName = mergeName;
    }

    public String getChargeName() {
        return chargeName;
    }

    public void setChargeName(String chargeName) {
        this.chargeName = chargeName;
    }

    public String getChargeArea() {
        return chargeArea;
    }

    public void setChargeArea(String chargeArea) {
        this.chargeArea = chargeArea;
    }

    public boolean isConfigStatus() {
        return configStatus;
    }

    public void setConfigStatus(boolean configStatus) {
        this.configStatus = configStatus;
    }

    public Integer getSort() {
        return sort;
    }

    public void setSort(Integer sort) {
        this.sort = sort;
    }

    public boolean isDeleted() {
        return deleted;
    }

    public void setDeleted(boolean deleted) {
        this.deleted = deleted;
    }

    public String getCreateName() {
        return createName;
    }

    public void setCreateName(String createName) {
        this.createName = createName;
    }

    public String getUpdateName() {
        return updateName;
    }

    public void setUpdateName(String updateName) {
        this.updateName = updateName;
    }

    public List<String> getConfigId() {
        return configId;
    }

    public void setConfigId(List<String> configId) {
        this.configId = configId;
    }

    public ResidentsTypeEnum getReType() {
        return reType;
    }

    public void setReType(ResidentsTypeEnum reType) {
        this.reType = reType;
    }

    public String getHouseName() {
        return houseName;
    }

    public void setHouseName(String houseName) {
        this.houseName = houseName;
    }

    public Integer getMeterNumber() {
        return meterNumber;
    }

    public void setMeterNumber(Integer meterNumber) {
        this.meterNumber = meterNumber;
    }

    public Integer getConfigNumber() {
        return configNumber;
    }

    public void setConfigNumber(Integer configNumber) {
        this.configNumber = configNumber;
    }

    public String getMobile() {
        return mobile;
    }

    public void setMobile(String mobile) {
        this.mobile = mobile;
    }

    public String getFloorName() {
        return floorName;
    }

    public void setFloorName(String floorName) {
        this.floorName = floorName;
    }
}
